Identifying roadway concerns and taking preemptive actions

ABSTRACT

An example operation may include one or more of identifying a person as a roadway obstruction via a transport moving along the roadway, determining a first threat level of the person at a first time, via the transport, when the first threat level is above a threshold, indicating via the transport, to alert at least one of an occupant of the transport and the person, detecting a gesture, via the transport, performed by the person, and the gesture indicates the transport should proceed, responsive to detecting the gesture, determining a second threat level at a second time is below the threshold, and responsive to the second threat level being below the threshold, proceeding, by the transport, along the roadway.

TECHNICAL FIELD

This application generally relates to automated controls, and moreparticularly, to automated controls for transports.

BACKGROUND

Vehicles or transports, such as cars, motorcycles, trucks, planes,trains, etc., generally provide transportation needs to occupants and/orgoods in a variety of ways. Functions related to transports may beidentified and utilized by various computing devices, such as asmartphone or a computer.

Transports may experience various conditions in areas populated withpeople, traffic, etc. Autonomous transports which are operated withoutdrivers can encounter safety concerns, such as pedestrians in a roadway.Also, traffic surges may create slowdowns which can cause lost time andwasted resources. What is needed are solutions to overcome theseproblems and limitations.

SUMMARY

One example embodiment provides a method that includes one or more ofidentifying a plurality of transports operating on a roadway,determining a degree of transport traffic based on the plurality ofidentified transports, when the degree of transport traffic has exceededa traffic level, assigning one or more of the plurality of identifiedtransports as a roadway manage, controlling movement of the roadwaymanager, and generating a roadway indicator on the roadway manager todirect the plurality of identified transports.

Another example embodiment includes a system that includes a computingdevice, and a plurality of transports, and one of the plurality oftransports or the computing device is configured to perform one or moreof identify the plurality of transports on a roadway, determine a degreeof transport traffic based on the plurality of identified transports,when the degree of transport traffic has exceeded a traffic level,assign one or more of the plurality of identified transports as aroadway manager, control movement of the roadway manager, and generate aroadway indicator on the roadway manager to direct the plurality ofidentified transports.

Still another example embodiment includes a non-transitory computerreadable storage medium configured to store instructions that whenexecuted cause a processor to perform one or more of identifying aplurality of transports operating on a roadway, determining a degree oftransport traffic based on the plurality of identified transports, whenthe degree of transport traffic has exceeded a traffic level, assigningone or more of the plurality of identified transports as a roadwaymanager, controlling movement of the roadway manager, and generating aroadway indicator on the roadway manager to direct the plurality ofidentified transports.

Still yet another example embodiment provides a method that includes oneor more of identifying a person as a roadway obstruction via a transportmoving along the roadway, determining a first threat level of the personat a first time, via the transport, when the first threat level is abovea threshold, indicating via the transport, to alert at least one of anoccupant of the transport and the person, detecting a gesture, via thetransport, performed by the person, wherein the gesture indicates thetransport should proceed, responsive to detecting the gesture,determining a second threat level at a second time is below thethreshold, and responsive to the second threat level being below thethreshold, proceeding, by the transport, along the roadway.

Still yet a further example embodiment provides a system that includes atransport configured to perform one or more of identify a person as aroadway obstruction moving along a roadway, determine a first threatlevel of the person at a first time, when the first threat level isabove a threshold, perform an alert indication to at least one of anoccupant of the transport and the person, detect a gesture, performed bythe person, wherein the gesture indicates the transport should proceed,responsive to detection of the gesture, determine a second threat levelat a second time is below the threshold, and responsive to the secondthreat level being below the threshold, proceed along the roadway.

Still yet another example embodiment includes a non-transitory computerreadable storage medium configured to store instructions that whenexecuted cause a processor to perform one or more of identifying aperson as a roadway obstruction via a transport moving along theroadway, determining a first threat level of the person at a first time,via the transport, when the first threat level is above a threshold,indicating via the transport, to alert at least one of an occupant ofthe transport and the person, detecting a gesture, via the transport,performed by the person, and the gesture indicates the transport shouldproceed, responsive to detecting the gesture, determining a secondthreat level at a second time is below the threshold, and responsive tothe second threat level being below the threshold, proceeding, by thetransport, along the roadway.

Still yet another example embodiment provides a method that includes oneor more of identifying, via a transport, at least one person inproximity to the transport, determining the at least one person matchesone or more profile attributes of a profile of at least one transportoccupant, sending a notification to a communication device in thetransport to prompt the at least one transport occupant about theidentified at least one person and the matched one or more profileattributes, and responsive to receiving a communication request from thecommunication device, transmitting a communication invite to a mobiledevice of the at least one person.

Still yet another example embodiment includes a system that includes atransport, and a communication device, and the transport is configuredto perform one or more of identify at least one person in proximity tothe transport, determine the at least one person matches one or moreprofile attributes of a profile of at least one transport occupant, senda notification to the communication device in the transport to promptthe at least one transport occupant about the identified at least oneperson and the matched one or more profile attributes, and responsive toa communication request being received from the communication device,transmit a communication invite to a mobile device of the at least oneperson.

Still yet a further example embodiment includes a non-transitorycomputer readable storage medium configured to store instructions thatwhen executed cause a processor to perform one or more of identifying,via a transport, at least one person in proximity to the transport,determining the at least one person matches one or more profileattributes of a profile of at least one transport occupant, sending anotification to a communication device in the transport to prompt the atleast one transport occupant about the identified at least one personand the matched one or more profile attributes, and responsive toreceiving a communication request from the communication device,transmitting a communication invite to a mobile device of the at leastone person.

Yet a further example embodiment provides a method that includes one ormore of identifying a plurality of transports operating on a roadway,identifying one or more gestures performed by one or more of a pluralityof transport occupants located inside the transports, interpreting theone or more gestures as transport operation controls, determining one ofthe transports has a higher priority than at least one other of theplurality of transports, applying the one or more gestures associatedwith the higher priority transport to control movement of the pluralityof transports on the roadway.

Still a further example embodiment includes a system that includes acomputing device, and a plurality of transports, and the computingdevice is configured to perform one or more of identify the plurality oftransports operating on a roadway, identify one or more gesturesperformed by one or more of a plurality of transport occupants locatedinside the transports, interpret the one or more gestures as transportoperation controls, determine one of the transports has a higherpriority than at least one other of the plurality of transports, andapply the one or more gestures associated with the higher prioritytransport to control movement of the plurality of transports on theroadway.

Still yet another example embodiment includes a non-transitory computerreadable storage medium configured to store instructions that whenexecuted cause a processor to perform one or more of identifying aplurality of transports operating on a roadway, identifying one or moregestures performed by one or more of a plurality of transport occupantslocated inside the transports, interpreting the one or more gestures astransport operation controls, determining one of the transports has ahigher priority than at least one other of the plurality of transports,and applying the one or more gestures associated with the higherpriority transport to control movement of the plurality of transports onthe roadway.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1A illustrates an example network diagram of a transport trafficscenario, according to example embodiments.

FIGS. 1B and 1C illustrate an example network diagram of a transportencountering a person in a roadway, according to example embodiments.

FIG. 1D illustrates an example of a transport identifying persons near aroadway area, according to example embodiments.

FIG. 1E illustrates an example of a transport communicating with anothertransport based on transport occupant gestures, according to exampleembodiments.

FIG. 1F illustrates an example of a transport utilizing indicators anddetectors to share and receive roadway signaling from othercommunication entities, according to example embodiments.

FIG. 1G illustrates an example of a transport interior environmentreceiving and processing gesture commands by a transport occupant,according to example embodiments.

FIG. 1H illustrates an example network configuration of atransport-to-transport indicator operation, according to exampleembodiments.

FIG. 2A illustrates a blockchain configuration, according to exampleembodiments.

FIG. 2B illustrates another blockchain configuration, according toexample embodiments.

FIG. 2C illustrates a further blockchain configuration, according toexample embodiments.

FIG. 3A illustrates a system diagram of a traffic managementconfiguration utilizing a distributed ledger, according to exampleembodiments.

FIG. 3B illustrates a flow diagram of a transport traffic managementconfiguration, according to example embodiments.

FIG. 3C illustrates a flow diagram of a transport roadway safetyconfiguration, according to example embodiments.

FIG. 3D illustrates a flow diagram of a transport person identificationconfiguration, according to example embodiments.

FIG. 3E illustrates a flow diagram of a gesture interpretation andtransport management configuration, according to example embodiments.

FIG. 4A illustrates a flow diagram of a transport traffic managementconfiguration, according to example embodiments.

FIG. 4B illustrates a flow diagram of a transport roadway safetyconfiguration, according to example embodiments.

FIG. 4C illustrates a flow diagram of a transport person identificationconfiguration, according to example embodiments.

FIG. 4D illustrates a flow diagram of a gesture interpretation andtransport management configuration, according to example embodiments.

FIG. 4E illustrates a flow diagram of a traffic condition sharingconfiguration, according to example embodiments.

FIG. 5A illustrates a blockchain vehicle configuration for managingblockchain transactions associated with a vehicle, according to exampleembodiments.

FIG. 5B illustrates another blockchain vehicle configuration formanaging blockchain transactions between a service center and a vehicle,according to example embodiments.

FIG. 5C illustrates yet another blockchain vehicle configuration formanaging blockchain transactions conducted among various vehicles,according to example embodiments

FIG. 6 illustrates example data blocks, according to exampleembodiments.

FIG. 7 illustrates an example system that supports one or more of theexample embodiments.

DETAILED DESCRIPTION

It will be readily understood that the instant components, as generallydescribed and illustrated in the figures herein, may be arranged anddesigned in a wide variety of different configurations. Thus, thefollowing detailed description of the embodiments of at least one of amethod, apparatus, non-transitory computer readable medium and system,as represented in the attached figures, is not intended to limit thescope of the application as claimed but is merely representative ofselected embodiments.

The instant features, structures, or characteristics as describedthroughout this specification may be combined in any suitable manner inone or more embodiments. For example, the usage of the phrases “exampleembodiments”, “some embodiments”, or other similar language, throughoutleast this specification refers to the fact that a particular feature,structure, or characteristic described in connection with the embodimentmay be included in at one embodiment. Thus, appearances of the phrases“example embodiments”, “in some embodiments”, “in other embodiments”, orother similar language, throughout this specification do not necessarilyall refer to the same group of embodiments, and the described features,structures, or characteristics may be combined in any suitable manner inone or more embodiments. In the diagrams, any connection betweenelements can permit one-way and/or two-way communication even if thedepicted connection is a one-way or two-way arrow. In the currentapplication, a transport may include one or more of cars, trucks,motorcycles, scooters, bicycles, boats, recreational vehicles, planes,and any object that may be used to transport people and or goods fromone location to another.

In addition, while the term “message” may have been used in thedescription of embodiments, the application may be applied to many typesof network data, such as, a packet, frame, datagram, etc. The term“message” also includes packet, frame, datagram, and any equivalentsthereof. Furthermore, while certain types of messages and signaling maybe depicted in exemplary embodiments they are not limited to a certaintype of message, and the application is not limited to a certain type ofsignaling.

Example embodiments provide methods, systems, components, non-transitorycomputer readable media, devices, and/or networks, which provide atleast one of: a transport (also referred to as a vehicle herein) a datacollection system, a data monitoring system, a verification system, anauthorization system and a vehicle data distribution system. The vehiclestatus condition data, received in the form of communication updatemessages, such as wireless data network communications and/or wiredcommunication messages, may be received and processed to identifyvehicle/transport status conditions and provide feedback as to thecondition changes of a transport. In one example, a user profile may beapplied to a particular transport/vehicle to authorize a current vehicleevent, service stops at service stations, and to authorize subsequentvehicle rental services. In another example, the user profile may beused to identify a user priority status when operating/riding in avehicle. The priority may provide a way to assign traffic managementrights to a particular user and a corresponding transport/vehicle. Inanother example, a vehicle may be configured to identify gestures forcommunicating with persons in a roadway, and to share traffic managementsignaling/communications between vehicles and their occupants. Also, avehicle may be configured to apply an occupant's profile to identifiedlocations and whether identified locations, persons and/or other objectspertain to certain occupant profile attributes.

Within the communication infrastructure, a decentralized database is adistributed storage system which includes multiple nodes thatcommunicate with each other. A blockchain is an example of adecentralized database which includes an append-only immutable datastructure (i.e. a distributed ledger) capable of maintaining recordsbetween untrusted parties. The untrusted parties are referred to hereinas peers, nodes or peer nodes. Each peer maintains a copy of thedatabase records and no single peer can modify the database recordswithout a consensus being reached among the distributed peers. Forexample, the peers may execute a consensus protocol to validateblockchain storage entries, group the storage entries into blocks, andbuild a hash chain via the blocks. This process forms the ledger byordering the storage entries, as is necessary, for consistency. In apublic or permissionless blockchain, anyone can participate without aspecific identity. Public blockchains can involve cryptocurrencies anduse consensus based on various protocols such as proof of work (PoW). Onthe other hand, a permissioned blockchain database provides a systemwhich can secure interactions among a group of entities which share acommon goal, but which do not or cannot fully trust one another, such asbusinesses that exchange funds, goods, information, and the like. Theinstant application can function in a permissioned and/or apermissionless blockchain setting.

Smart contracts are trusted distributed applications which leveragetamper-proof properties of the shared or distributed ledger (i.e., whichmay be in the form of a blockchain) database and an underlying agreementbetween member nodes which is referred to as an endorsement orendorsement policy. In general, blockchain entries are “endorsed” beforebeing committed to the blockchain while entries which are not endorsedare disregarded. A typical endorsement policy allows smart contractexecutable code to specify endorsers for an entry in the form of a setof peer nodes that are necessary for endorsement. When a client sendsthe entry to the peers specified in the endorsement policy, the entry isexecuted to validate the entry. After validation, the entries enter anordering phase in which a consensus protocol is used to produce anordered sequence of endorsed entries grouped into blocks.

Nodes are the communication entities of the blockchain system. A “node”may perform a logical function in the sense that multiple nodes ofdifferent types can run on the same physical server. Nodes are groupedin trust domains and are associated with logical entities that controlthem in various ways. Nodes may include different types, such as aclient or submitting-client node which submits an entry-invocation to anendorser (e.g., peer), and broadcasts entry-proposals to an orderingservice (e.g., ordering node). Another type of node is a peer node whichcan receive client submitted entries, commit the entries and maintain astate and a copy of the ledger of blockchain entries. Peers can alsohave the role of an endorser, although it is not a requirement. Anordering-service-node or orderer is a node running the communicationservice for all nodes, and which implements a delivery guarantee, suchas a broadcast to each of the peer nodes in the system when committingentries and modifying a world state of the blockchain, which is anothername for the initial blockchain entry which normally includes controland setup information.

A ledger is a sequenced, tamper-resistant record of all statetransitions of a blockchain. State transitions may result from smartcontract executable code invocations (i.e., entries) submitted byparticipating parties (e.g., client nodes, ordering nodes, endorsernodes, peer nodes, etc.). An entry may result in a set of assetkey-value pairs being committed to the ledger as one or more operands,such as creates, updates, deletes, and the like. The ledger includes ablockchain (also referred to as a chain) which is used to store animmutable, sequenced record in blocks. The ledger also includes a statedatabase which maintains a current state of the blockchain. There istypically one ledger per channel. Each peer node maintains a copy of theledger for each channel of which they are a member.

A chain is an entry log which is structured as hash-linked blocks, andeach block contains a sequence of N entries where N is equal to orgreater than one. The block header includes a hash of the block'sentries, as well as a hash of the prior block's header. In this way, allentries on the ledger may be sequenced and cryptographically linkedtogether. Accordingly, it is not possible to tamper with the ledger datawithout breaking the hash links. A hash of a most recently addedblockchain block represents every entry on the chain that has comebefore it, making it possible to ensure that all peer nodes are in aconsistent and trusted state. The chain may be stored on a peer nodefile system (i.e., local, attached storage, cloud, etc.), efficientlysupporting the append-only nature of the blockchain workload.

The current state of the immutable ledger represents the latest valuesfor all keys that are included in the chain entry log. Because thecurrent state represents the latest key values known to a channel, it issometimes referred to as a world state. Smart contract executable codeinvocations execute entries against the current state data of theledger. To make these smart contract executable code interactionsefficient, the latest values of the keys may be stored in a statedatabase. The state database may be simply an indexed view into thechain's entry log, it can therefore be regenerated from the chain at anytime. The state database may automatically be recovered (or generated ifneeded) upon peer node startup, and before entries are accepted.

A blockchain is different from a traditional database in that theblockchain is not a central storage but rather a decentralized,immutable, and secure storage, where nodes must share in changes torecords in the storage. Some properties that are inherent in blockchainand which help implement the blockchain include, but are not limited to,an immutable ledger, smart contracts, security, privacy,decentralization, consensus, endorsement, accessibility, and the like.

Example embodiments include providing a vehicle traffic managementconfiguration to a particular vehicle. For example, a vehicle may beselected to direct traffic and control other vehicles on a roadway in anautonomous manner and under certain circumstances. In another exampleembodiment, a vehicle may be configured to manage safety measures when aperson is on or near a roadway, and may be attempting to communicatewith the vehicle via gestures or movements. In another exampleembodiment, the vehicle may be set up to monitor locations, objects andpersons (e.g., facial recognition), to identify persons, retrieve theirprofiles and pair the attributes of one person with those of the vehicleoccupants for optimal meeting opportunities. In another exampleembodiment, gestures may be identified by a vehicle and interpreted intovehicle-to-vehicle signaling for optimal vehicle communications withother vehicles and roadway objects configured to communicate with such avehicle. The vehicle may be monitored via one or more sensors whichreport sensed data to a central controller computer device in thevehicle, which in turn, is forwarded to a management server for reviewand action.

A sensor may be located on one or more of the interior of the transport,the exterior of the transport, on a fixed object apart from thetransport, and on another transport near to the transport. The sensormay also be associated with the transport's speed, the transport'sbraking, the transport's acceleration, fuel levels, service needs, thegear-shifting of the transport, the transport's steering, and the like.The notion of a sensor may also be a device, such as a mobile device.Also, sensor information may be used to identify whether the vehicle isoperating safely and whether the occupant user has engaged in anyunexpected vehicle conditions, such as during the vehicle access period.Vehicle information collected before, during and/or after a vehicle'soperation may be identified and stored in a transaction on ashared/distributed ledger, which may be generated and committed to theimmutable ledger as determined by a permission granting consortium, andthus in a “decentralized” manner, such as via a blockchain membershipgroup. Each interested party (i.e., company, agency, etc.) may want tolimit the exposure of private information, and therefore the blockchainand its immutability can limit the exposure and manage permissions foreach particular user vehicle profile. A smart contract may be used toprovide compensation, quantify a user profile score/rating/review, applyvehicle event permissions, determine when service is needed, identify acollision and/or degradation event, identify a safety concern event,identify parties to the event and provide distribution to registeredentities seeking access to such vehicle event data. Also, the resultsmay be identified, and the necessary information can be shared among theregistered companies and/or individuals based on a “consensus” approachassociated with the blockchain. Such an approach could not beimplemented on a traditional centralized database.

Data shared and received may be stored in a database which maintainsdata in one single database (e.g., database server) and generally at oneparticular location. This location is often a central computer, forexample, a desktop central processing unit (CPU), a server CPU, or amainframe computer. Information stored on a centralized database istypically accessible from multiple different points. A centralizeddatabase is easy to manage, maintain, and control, especially forpurposes of security because of its single location. Within acentralized database, data redundancy is minimized as a single storingplace of all data also implies that a given set of data only has oneprimary record.

In another embodiment, a gesture training model is included wherein datafrom at least one vehicle is received by a server in a network. The datais utilized as input to the gesture training model through the use ofmachine learning.

In yet another embodiment, the gesture interpretation and execution isperformed by a computer, such an on-site transport computer.

In yet another embodiment, at least one sensor on the transport receivesgestures from outside entities, such as humans geographically locatedoutside of the transport.

FIG. 1A illustrates an example network diagram of a transportencountering a transport traffic scenario, according to exampleembodiments. Referring to FIG. 1A, the configuration 100 provides aroadway intersection with increasing vehicle traffic, such as a vehicle120 of interest and other vehicles 122. A data management server 128 andthe vehicle 120 may be configured to communicate (i.e., via a cellularcommunication network, local network, etc.) with one another (and withother vehicles, as well as devices within the vehicles and outside ofthe vehicles, such as wireless devices and/or other devices containing aprocessor and memory). The information received or accessed by the datamanagement server 128 can be used to identify an amount of trafficobserved by the vehicle 120 (and other vehicles), such as an increase invehicle traffic (and/or pedestrian traffic, in an embodiment) andwhether such increase or a total number of observed vehicles within adefined area (i.e., 1000 square yards, a 2-mile radius, an intersection,a street or highway, in or around a particular structure, etc.), hasexceeded a threshold amount of vehicles (or a speed per vehicle and/oran average speed of all vehicles, etc.). For instance, as the vehicle120 approaches an intersection, a set of operations may occur whichincludes identifying a current traffic scenario, evaluating a trafficmanagement effort required to alleviate the increase in traffic, andwhich vehicle(s) should perform such an effort and to what extent theassigned vehicle should execute such tasks. The threshold(s) can bestored in the data management server 128 and/or one or more of thetransports (in a memory communicably coupled to a processor) andprovided/updated by a qualified individual and/or entity such as agovernment, municipality/city, third-party, etc.

In one example, the vehicle 120 may be any of a plurality of vehiclesapproaching an area of vehicles, such as an area where traffic isbecoming slow and may be creating a safety risk due to an increase inchances of a collision. The vehicle 120 may perform identifying aplurality of transports operating on a roadway, such as via a camera,audio or other sensors, which detect the other vehicles as well as theirdirection, counts the number of vehicles, and evaluates a total numberof vehicles. The server 128 may receive a live feed, an uploaded messageor other indicator from the vehicle 120 regarding the total number ofvehicles on the roadway within a defined area, such as a predefineddistance radius. The server 128 may receive the data from the vehicle120 (and/or other vehicles) and identify there are a certain number ofvehicles beyond a vehicle threshold (Tv). In this event, the server mayidentify the vehicle 120 is the best suited to be assigned as thetraffic manager for a period of time or until the number of vehicles isreduced. The process may also include determining a degree of transporttraffic based on the plurality of identified transports. The degree maybe a measurement of a number of cars within a defined area, an amount ofnoise, such as honking or vehicle engine noise indicating an excess ofvehicles in particular area, and/or a time of day, a time of month, aday of the week, a recent change in the area such as related toconstruction and/or a recent increase in a number of accidents near thearea of interest, etc. The degree of transport traffic, based on any ofthe aforementioned traffic characteristics, may exceed a particulartraffic level, and the server 128 and/or a different management entity(i.e., a previous or current roadway manager) may then assign one ormore of the plurality of identified transports as a roadway manager.Once the roadway manager is assigned, the vehicle may be controlled, orgiven information to control, by the server or another remote entity tobegin managing traffic. The movement of the roadway manager may becontrolled by the server 128 and any one or more of a display, lights,an audio speaker, text. video or other signal indicator which may beengaged to generate commands, such as stop 124 and go 126. The roadwayindicators may be affixed to the one or more roadway managers to directthe plurality of identified transports along the roadway in avehicle-to-vehicle communication language that can be received,processed and interpreted by the other vehicles, such as by sensors onthe other vehicles configured to receive light, audio and othersignaling and process the signals via an on-board computer. The languagebetween the vehicles may be a simple impulse language such as MORSE codeexpressed through light impulses, audio impulses and other signaling.

When assigning the transport(s) as a roadway manager a movement of theroadway manager may be paused while the roadway indicator(s) aregenerated and produced by the roadway manager based on a characteristicof the transport traffic, such as a need to stop, go, turn, wait, etc.As many vehicles may not be autonomous, the drivers of those vehiclesmay be able to view a display device affixed to, or integrated with, themanager vehicles, that produces roadway signs which are familiar todrivers, such as an image of a stop sign on a display embedded oraffixed to the window of the vehicle or within the window of thevehicle. The vehicle manager may be assigned as a hired entity, such asa contracted vehicle that is licensed and registered to perform suchtasks. The vehicle profile may be a candidate to be designated as amanager for a period of time.

The roadway indicator may include one or more of a road sign display, alight display, a text indicator, a video indicator, a wireless datamessage command, and an audio indicator to direct the plurality ofidentified transports. The other transports may detect the indiciaproduced by the manager or may receive messages from the manager via adirect communication protocol or via a cellular data network medium.Once a manager is assigned, the other vehicles may also be monitored andcontrolled so as not to usurp the manager's authority. For example, thevehicles may become dormant or slow until controlled by the manager'sindicators and instructions.

The process may further provide detecting the roadway indicator via oneor more of the plurality of identified transports, and responsive todetecting the roadway indicator, retrieving transport operationinstructions from a memory, such as via a computer or other datanetworking device with access to a databank of commands andinterpretation data, and controlling movements of the plurality ofidentified transports based on the retrieved transport operationinstructions. After a period of time, the degree of transport trafficmay no longer be exceeding the traffic level, and removing the roadwaymanager assignment from the one or more of the plurality of identifiedtransports may occur to permit traffic to move freely without a trafficmanager.

During the manager assignment process, and responsive to determiningwhen the degree of transport traffic has exceeded the traffic level, asmart contract may be referenced to identify one or more of theidentified plurality of transports on the roadway to be assigned as aroadway manager. The vehicles may be registered as potential managersbased on reputation scores, registration, occupant profiles andreputation information, etc. When using the smart contract to invoke themanager selection process, a blockchain transaction is created toinclude information, such as one or more of the roadway manageridentification information, a date, a time, a compensation and alocation of the roadway traffic. The blockchain transaction is thenstored in a distributed ledger for audit purposes.

FIGS. 1B & 1C illustrate an example network diagram of a transportencountering a person in the roadway, according to example embodiments.Referring to FIG. 1B, the example 130 provides a scenario where thevehicle 132 is configured, at a first time and distance T1/D1, from aperson identified by a detector/sensor of the vehicle, to identify theperson 134 as a person near, in, and/or entering the roadway used by thevehicle. The distance between the vehicle and the person at that timeT1, a speed of the vehicle at that time, and a position of the person'sbody at that time with respect to the roadway and/or the vehicle, etc.may all be used as information for identifying a person as a roadwayobstruction (or potential roadway obstruction) while the vehicle movesalong the roadway. In the detection phase, the camera, sensors, etc.,detect the object and identify the object as a person based on one ormore algorithms, such as a geometry matching algorithm that matches thedetected roadway person to a known object stored in memory, such as inthe data management server 128.

In operation, the vehicle 132 may identify the person via a shapematching operation where the shape of the person, identified from animage capture of a camera of the vehicle 132, is matched to a known orapproximate shape of a person stored in memory. At the first time T1 anddistance D1 134, the vehicle 132 may identify the person 134 anddetermine that the relative threat level of the person's safety is at afirst level, if that level is below a threat threshold (Tt), the vehiclemay take no action at that time, or, the vehicle may perform a simpleindicator 136, such as a quick flash of the lights, a quick honk of thehorn or other audible device, a slight slowdown of the current speed toanticipate the next decision regarding the person's safety, etc. In oneembodiment, the vehicle, via one or more algorithms and/or sensors, candetermine an object in the roadway is a person, a direction of themovement of the person and a speed of the movement. Such determinationscan be used to move the vehicle (or alert a driver of the vehicle, or aperson controlling the vehicle) to a lane where the person is movingaway from at a speed such that the person can safely be in the lane awayfrom where the vehicle is heading. In another embodiment, the vehicle132 can determine if other vehicles may be headed toward the person andalert those vehicles of such a scenario via vehicle-to-vehicle (V2V)communication, via the data management server 128, or via anotherwireless and/or wired network (not shown), The sensors used by thevehicle may be located on or in the vehicle, or may be located onobjects apart from the vehicle (such as light poles, street signs,buildings, other transports, etc.). When the threat is identified asbeing above the threshold, based on any one or more of the currentvehicle speed, a location of the vehicle (e.g., safety concern zones,highly populated areas, school zones, public venues, etc.), the vehiclemay take an action, such as an indicator to alert the person e.g., flashof the lights, honk of the horn, etc.).

In another example, the vehicle may use one or more detectors, such as acamera, to identify the person's movements and/or gestures. For example,when detecting a gesture, via the transport, performed by the person,the gesture may be identified as an indication that the person isprompting the vehicle to proceed and keep moving, by a hand movementbeing interpreted as beckoning the transport to proceed, while theperson waits on a side of the roadway. Another gesture example, withreference to configuration 135 of FIG. 1C, provides a person 134 with ahand movement gesture 139 at a later time T2 and shorter distance D2between the person and the vehicle 132 than the previous distance D1. Inthis example, responsive to detecting the gesture, a second threat leveldetermination may be performed at the second time to determine whetherthe threat threshold has been exceeded. The determination may be afunction of speed, time of day, location, position of the person in theroadway, such as whether the person is on the edge of the roadway orcloser to the center of the roadway, whether a gesture can be detected,etc. The gesture may serve as an override, for example, if the persongestures the car to continue by performing a gesture, such as moving ina circular or back-and-forth motion as a beckon to keep moving. In sucha scenario, the vehicle may continue moving. However, if the person isnear the center of the roadway, then the indicator ‘B’ 138 may be alouder honk, a brighter and more repetitive light flashing and/or otherfeatures such as a higher degree of breaking, stopping, and evenswerving the vehicle's motion away from the person until the threatlevel is reevaluated and the vehicle can determine the threat has beenrevoked, such as when the person is no longer in the roadway. In thecase of the threat being alleviated, responsive to the second threatlevel determination being identified as below the threshold, thetransport may proceed along the roadway. In one embodiment, the person134 may hold up a stop gesture, such as gesture 139, which would causethe transport to stop until a sensor(s) detected the user was a safedistance away from the transport. The threat levels may be based on aspeed of transport, a direction of the transport and a distance betweenthe transport and the person.

When evaluating whether the vehicle is still a threat to the person, thevehicle may detect that the person is deviating away from the transportbased on one or more of a location of the person at the second time anda position of the person's body at the second time, such as a turned andwalking position versus a static position near the center of theroadway. Responsive to identifying the person is deviating away from thetransport, a gesture may be interpreted by the transport as anopportunity to proceed along the roadway. The identifying of the personas deviating away from entering or leaving the roadway may be based onone or more of a location of the person at the second time and aposition of the person's body at the second time.

FIG. 1D illustrates an example of a transport identifying persons near aroadway area, according to example embodiments. Referring to FIG. 1D,the example 140 includes a vehicle 120 traveling through a populatedarea. The vehicle may be monitoring for identifiable areas, such as aservice station 148, a restaurant 146 and other places which can be usedto park the vehicle. The vehicle detector (i.e., sensor(s), camera 142,etc.) may be used to identify various persons as well by facialrecognition. A device inside the vehicle 141 may provide a profile ofone or more occupants of the vehicle, which can be used to determine auser's goals, schedule, objectives, likes, dislikes, etc., so anidentified object, such as a person can be identified and potentiallymatched via the person's profile to those profile attributes of thevehicle occupant for a potential connection opportunity. The profile ofone or more occupants of the vehicle can also be pre-entered in a memoryof the vehicle or may be provided to the memory of the vehicle when anoccupant's mobile device is used to reserve or access a vehicle.

In operation, a periphery of the vehicle 120 may include a range of areawhere the vehicle detector/camera 142 can scan and identify one or morepersons which are in proximity to the vehicle/transport 120. In thisexample certain persons 144 and 145 near a roadway, such as on asidewalk or rest area, are viewed and identified by the vehicle camera142. The images of their faces or other defining attributes can beidentified and matched to a known set of profiles to identify matches.Any matched profile/person can be used to retrieve information about thepersons identified from a database accessible by the vehicle or from theoccupant's device(s), which can be compared to profile information ofthe vehicle occupants. For example, when determining the identifiedperson matches one or more profile attributes of a profile of at leastone transport occupant, an attribute of the person's profile may matchan attribute identified from the occupant's profile, such as a need forassistance from any type of service provider such as a plumber, lawyeror nutritionist identified from the vehicle occupant's profile. The needcan be identified from a written statement included in the user's onlinesocial media profile, a previous email, a text message, an entry into asystem such as the data management server 128 or application hosted onanother server but accessible by/to the vehicle and occupant's andpersons devices (who can also post their skills and other information)to receive such information, etc. The process may further include, afteridentifying a match, creating and sending a notification to acommunication device in the transport to prompt the transportoccupant(s) about the identified at least one person 144 and 146 and thematched one or more profile attributes. An example may include, alertingthe communication device to state: “A nutritionist has been identifiednearby, would you like to request a meeting at the closestestablishment?”. The occupant may then select ‘yes’ and the applicationmay then attempt to contact the person's device so a message may becreated and sent to the person. Such a message may state: “Would youlike to meet a potential client at the nearest establishment?”. Theanswer provided by the person may cause additional information to beprovided about the occupant and their need(s) to the person and for ameeting to be scheduled.

When attempting to match the person's profile to the transport occupantprofile, the profile attributes of the identified person(s), which arestored in the profile of the person, are identified and matched to oneor more profile attributes of the transport occupant(s). The matchingmay include determining that the profile of the person is a knowncontact of the transport occupant, such as a social network contact,phone contact, etc., and/or the profile of the at least one personmatches at least one interest of the at least one transport occupant,such an identified interest may be stored in the one or more profileattributes of the at least one transport occupant. When the profile ofthe at least one person is a known contact of the at least one transportoccupant, or, the profile of the at least one person matches at leastone interest of the at least one transport occupant, a suggested meetingis created between the at least one transport occupant and the at leastone person and a meeting request is sent to the communication device andthe mobile device so the invited parties can confirm a meeting time andlocation. The identification process may include locating andidentifying at least one person in an area adjacent to a roadwaycurrently used by the transport. Another location where the person canbe identified may be in another transport traveling within a proximityof the transport, or traveling toward the transport or to a similardestination of the transport, and/or at a facility within proximity ofthe transport. The camera(s) and/or other sensors can identify theperson(s) and share the information with the occupants assuming thepersons are within a predefined distance of the transport.

FIG. 1E illustrates an example of a transport communicating with anothertransport via transport signaling based on transport occupant gestures,according to example embodiments. Referring to FIG. 1E, the exampleconfiguration 150 includes more than one vehicle 152 and 154 on aroadway. The vehicles may be traveling in a path where they willeventually meet at an intersection or other roadway configuration wherethey may need to observe traffic cautionary signaling to avoid acollision. In this example, the occupants in the vehicle may engage in atype of in-vehicle gesturing where they are using their hands or otherbody parts (such as their heads, mouths, eyes, arms, etc.) to motion oneanother to proceed, stop, wait, etc., as occupants may normally do atfour-way stops and other intersections with a high likelihood ofcollision occurrence or delay.

In operation, the vehicles 152 and 154 may be traveling in oppositedirections, and as they vehicles approach one another, such as at afour-way stop, the occupants in the vehicles may attempt to gesture oneanother. For example, gesture attempt 156 may be performed to alert theoccupant in vehicle 154 to proceed, stop, wait, etc. The occupant invehicle 154 may also be attempting to gesture 158 to alert the occupantin vehicle 152 to take a similar action or a different action. Thevehicles may have internal detectors, sensors, cameras, and the like,which detect and forward (directly or via an on-board processor ordevice) the gestures, via a wired and/or wireless connection, to acomputing device (e.g., local on-board device, remote server, etc.)which can interpret the one or more gestures as transport operationcontrols, such as instructions to have the other vehicles go, stay,wait, stop, turn, etc. The vehicles may perform autonomous drivingoperations and may interpret the gestures into their own vehiclesignaling/command language shared from vehicle-to-vehicle. For example,when a gesture attempt is made 158, the vehicle 154 may detect thegesture 158 from inside the vehicle and translate the gesture as acommand instructing the other vehicle 152 to proceed while the vehicle154 waits. The vehicle 154 will detect the movement gesture and compareit to a table of commands for matching and execution. Once a command ismatched based on the detected gesture movement, the vehicle may performa series of indications, such as light, text, video and soundindications, which can be interpreted by the other vehicle 152 viasensors and a computing device configured to interpret the commands sentfrom gesture indicator hardware 164 and received by the receivingvehicle 152. Similarly, the vehicle 152 may be configured to signal viaits own hardware 162 to the vehicle 154 to confirm the gesture commandsand then proceed accordingly. Once the signals are interpreted, thevehicle that interpreted the vehicle indicators may proceed to followthose commands.

At a 2-way or 4-way stop sign, for example, the vehicle 154 candetermine (vis sensors, cameras, lidar, and the like) that the vehicle152 may be attempting to turn left if the left blinker is on, if thevehicle 152 approached the stop sign by driving a certain distance tothe left and/or the vehicle 152 is turned or positioned slightly to theleft as it comes to a stop. A gesture from a driver or a passenger ofthe vehicle 154 that may already be stopped at the stop sign and havethe right-of-way, may be detected by the vehicle 154 via on-boardequipment such as sensors, cameras, and the like) and transmitted to thevehicle 152 and/or may detected directly by on-board equipment in thevehicle 152 and parsed to mean an invitation of the vehicle 152 to turnleft (or in other examples, turn right or proceed ahead). The vehicle152 may proceed or may first confirm the gesture from vehicle 154 withits own gesture, such as via a human gesture, light, horn, text or videoon the vehicle 152 or may be transmitted wirelessly (viavehicle-to-vehicle (V2V) communication or via a wireless network), toone or more devices that are part of the vehicle 154 or in the vehicle154 (such as an occupant's mobile device).

In an embodiment, gestures from humans and/or vehicles may be determinedby a structure (such as a stop sign, a yield sign, light signal, lightpole, building, electrical box, sprinkler equipment box, etc.) with thenecessary equipment (such as processors, memories, sensors, cameras,transmitters, receivers, transceivers, etc.) in proximity to thevehicle(s). These gestures are then sent to their respectivedestinations (vehicles only and/or vehicles and then to occupants). Itmay be beneficial to have such a structure receive the gestures and actas an intermediary as the necessary equipment may be closer to a person(in the event the vehicle does not contain in-vehicle equipment) or canverify the gesture's meaning (via a database cross-check and/or seekingacknowledgement from the sender/sender's equipment) before transmittingit to the recipient. In the event that more than one of the vehicles areattempting to command the other vehicle to perform a driving action dueto multiple occupants gesturing at the same time in separate vehicles,then it may be determined that one of the vehicles has a higher prioritythan at least one other of the plurality of vehicles. The priority maybe based on a type of vehicle (e.g., police car, ambulance, school bus,student driver, etc.), experience, driver credentials, reputation,registered rights and permissions, etc. Then, when the higher priorityoccupant/vehicle is identified, the gesture that is correctly identifiedin that vehicle may take priority over other gestures identified in thatvehicle and/or in other vehicles and thus the right of way isestablished for that vehicle in which the gesture is identified ashaving a higher priority. For example, if an occupant in vehicle 152 andanother occupant in vehicle 154 are gesturing at the same time, and thegestures are identified and processed by the computing devices in therespective vehicles, then one gesture would have to take priority overthe other, and, in that case, the profile of the occupant and/or vehiclewould be used to determine which vehicle has the higher priority basedon any of the aforementioned priority criteria. Next, the one or moregestures associated with the higher priority transport are applied tocontrol movement of the plurality of transports on the roadway. Thenon-priority transports are then instructed through thevehicle-to-vehicle signaling to proceed with following instructions.

In another example embodiment, the vehicles at a busy intersection mayidentify gestures made by a traffic controller, such as a humancross-walk guard or police person that is directing traffic via stophand signals, go hand signals, continuing hand signals, etc. Thevehicles may override any occupant attempts to drive the vehicle andattempt to interpret the guard's gestures and decide when to accelerateand/or brake the vehicle. Alternatively, the vehicle may indicate to theoccupant to drive, stop, etc., and still permit the occupant to drivethe vehicle after an indicator (e.g., sound, light, etc.) is enactedinside the vehicle to prompt the occupant to continue/discontinuedriving based on the guard's gestures which are identified andinterpreted via a detector coupled to the vehicle.

Additionally, a gesture training model may be used to identify thegestures and signaling received from other vehicles on the roadway toactively identify an learn new gestures in a particular community orfrom particular types of vehicles. For example, as thevehicle-to-vehicle gestures are received and processed, the images andother information and data which are obtained may be stored in a memoryof the vehicle or a remote computing device which uses the informationto create or assign actions to perform based on the gestures received.The learning process may include adding new gesture models for newgestures received and to perform new actions depending on theinterpretation and assignment of those newly assigned gesture models.The remote computing device may store the information and update thevehicle to process such new gestures once the information is processedand stored.

The process of gesture interpretation may include determining one ormore of the plurality of transports are operating within a certaindistance of an intersection, and determining a first of the one or moregestures detected indicates one of the occupants, operating a firsttransport 152 of the plurality of transports, has instructed anotheroccupant, operating a second transport 154 of the plurality oftransports to move the second transport through the intersection. Thisprocess may also work with one unoccupied self-driving vehicle and oneoccupied driving vehicle, where the occupant instructs the unmannedvehicle to proceed and the interpretation of the vehicle then uses soundand light signals, for example, to instruct the unmanned vehicle toproceed. Also, both vehicles may be autonomous, in which case a higherpriority vehicle, such as a city or first responder vehicle may causethe other vehicles to yield via audible and/or light signals while thevehicle proceeds through the intersection.

In one example where there are more than two vehicles, responsive todetecting one or more indicators via the second transport, sent from afirst transport, the second transport may move through the intersection,and the same one or more indicators may be detected by a third transportdifferent from the first and second transports. Responsive to the one ormore indicators being detected by the third transport, the movement ofthe one or more other transports may be paused for a period of time. Theone or more indicators may include at least one of a light display, atext indicator, a video indicator, an audio indicator, a wireless datamessage command, a transport braking operation, a transport steeringoperation, etc.

FIG. 1F illustrates an example of a transport utilizing indicators andsensory based detectors to share and receive roadway signaling fromother communication entities and/or road signals and signs, according toexample embodiments. Referring to FIG. 1F, the example 170 provides avehicle detection and/or indicator system. For example, a vehicle 120may have indicators, such as a headlamp light 172, a foglamp 174, and aspeaker 176, which can be controlled by an on-board and/or off-boardcomputer/controller to command the indicators to engage in a pattern ofvehicle language recognized by other vehicles' detectors/sensors. Thesignals can be identified, processed and interpreted into vehiclemovement commands via the on-board and/or off-board computer/controller.The vehicles may also have certain detectors, such as a camera 178 andmicrophone 179. Also, light and sound sensors may be used to detectsound and light signals sent from other vehicles which can, in turn, beinterpreted into vehicle movement commands. For example, the commandingvehicle may display two quick light flashes to another vehicle, whichindicates a “go” command. The vehicle may instead provide one flash ofthe light and a horn sound, which indicates that it will proceed and theother vehicle should stop. In the illustration, the dotted linesrepresent a field of range each of the detectors and indicators. Thecamera 178 can be used to identify various images of conditions andother indicia of the environment and other vehicles attempting toprovide signal information to the vehicle. Various patterns of outputproduced by both the detectors and indicators can be used to provideinformation to ensure better reception of the information. For example,an indicator/headlamp 172 can be used to emit light informing a furthervehicle to proceed, while a detector/camera 178 can be used to captureimages indicating the action has been taken by the further vehicle. Inthe event the further vehicle does not take the action (i.e. does notproceed), another indicator can be used (such as the speaker 176) toalert the further vehicle and/or the driver of the further vehicle toproceed. In an embodiment, the speaker 176 can be used to alert thefurther vehicle and/or the driver of the further vehicle that aninstruction/information was sent that was not followed and to beprepared to receive the instruction again (via the headlamp 172).

FIG. 1G illustrates an example of a transport interior environmentreceiving and processing gesture commands by a transport occupant,according to example embodiments. Referring to FIG. 1G, the example 180includes a vehicle interior with various sensors 182 some of which maybe configured to identify the hand gesture 184 of the user/occupant 186and attempt to match the identified gesture to a known gesture stored inan on-board and/or off-board memory. In other embodiments, non-vehicleinterior sensors, such as a mobile device such as a phone, watch,glasses that include gesture recognition hardware and/or software, canbe used to provide gesture and other information to a recipient and/orrecipient device. Once a match is made between the input movementgesture and the known gesture, based on a degree of precision of imagematching, a table of gestures/commands may be used to identify whatindication to provide to the other vehicle(s). The on-board computerinterface 188 may process the signals received from the various sensorsand/or share the information with the vehicle management server 128,which can then store the sensor data 187 and the user profile data 189to perform a multitude of tasks such as to identify the purpose of thegesture, a priority of the gesture, an acceptance of the gesture, andwhether to attempt to control other transports on the roadway based onthe user gesture detected inside the vehicle.

FIG. 1H illustrates an example network configuration of atransport-to-transport indicator sharing and receiving operation,according to example embodiments. Referring to FIG. 1H, the example 190provides a scenario where the transports 191 and 192 are using theirdetectors and signaling elements to communicate in a vehicle-to-vehiclelanguage scenario, such as signal impulse languages, including but notlimited to MORSE code. The data that is received and sent from onevehicle to another may be stored on-board and/or off-board as indicatordata 193, which can be used to reference interpretation tables 194 forgesture to command matching purposes. The computing module in thisexample may also have a processor/controller 195 to process the gesturedata into identifiable data which can be matched to known gestures andcommands and to transmit such information to the vehicle managementserver 128. The vehicle management server 128 may store the sensor data,indicator data and/or the gesture data 199 needed to perform thelanguage interpretation between occupants and the vehicles and therespective transport commands 198 and provide that information, or makeit available, to the transports, to other transports, and/or to otherentities.

FIG. 2A illustrates a blockchain architecture configuration 200,according to example embodiments. Referring to FIG. 2A, the blockchainarchitecture 200 may include certain blockchain elements, for example, agroup of blockchain member nodes 202-206 as part of a blockchain group210. In one example embodiment, a permissioned blockchain is notaccessible to all parties but only to those members with permissionedaccess to the blockchain data. The blockchain nodes participate in anumber of activities, such as blockchain entry addition and validationprocess (consensus). One or more of the blockchain nodes may endorseentries based on an endorsement policy and may provide an orderingservice for all blockchain nodes. A blockchain node may initiate ablockchain action (such as an authentication) and seek to write to ablockchain immutable ledger stored in the blockchain, a copy of whichmay also be stored on the underpinning physical infrastructure.

The blockchain transactions 220 are stored in memory of computers as thetransactions are received and approved by the consensus model dictatedby the members' nodes. Approved transactions 226 are stored in currentblocks of the blockchain and committed to the blockchain via a committalprocedure which includes performing a hash of the data contents of thetransactions in a current block and referencing a previous hash of aprevious block. Within the blockchain, one or more smart contracts 230may exist that define the terms of transaction agreements and actionsincluded in smart contract executable application code 232, such asregistered recipients, vehicle features, requirements, permissions,sensor thresholds, gesture data, etc. The code may be configured toidentify whether requesting entities are registered to receive vehicleservices, what service features they are entitled/required to receivegiven their profile statuses and whether to monitor their actions insubsequent events. For example, when a service event occurs and a useris riding in the vehicle, the sensor data monitoring may be triggered,and a certain parameter, such as a vehicle charge level, may beidentified as being above/below a particular threshold for a particularperiod of time, then the result may be a change to a current statuswhich requires an alert to be sent to the managing party (i.e., vehicleowner, vehicle operator, server, etc.) so the service can be identifiedand stored for reference. The vehicle sensor data collected may be basedon types of sensor data used to collect information about vehicle'sstatus. The sensor data may also be the basis for the vehicle event data234, such as a location(s) to be traveled, an average speed, a topspeed, acceleration rates, whether there were any collisions, was theexpected route taken, what is the next destination, whether safetymeasures are in place, whether the vehicle has enough charge/fuel, andother data, such as gesture data, identified persons, trafficconditions, etc. All such information may be the basis of smart contractterms 230, which are then stored in a blockchain. For example, sensorthresholds stored in the smart contract can be used as the basis forwhether a detected service is necessary and when and where the serviceshould be performed.

FIG. 2B illustrates a shared ledger configuration, according to exampleembodiments. Referring to FIG. 2B, the blockchain logic example 250includes a blockchain application interface 252 as an API or plug-inapplication that links to the computing device and execution platformfor a particular transaction. The blockchain configuration 250 mayinclude one or more applications which are linked to applicationprogramming interfaces (APIs) to access and execute storedprogram/application code (e.g., smart contract executable code, smartcontracts, etc.) which can be created according to a customizedconfiguration sought by participants and can maintain their own state,control their own assets, and receive external information. This can bedeployed as an entry and installed, via appending to the distributedledger, on all blockchain nodes.

The smart contract application code 254 provides a basis for theblockchain transactions by establishing application code which whenexecuted causes the transaction terms and conditions to become active.The smart contract 230, when executed, causes certain approvedtransactions 226 to be generated, which are then forwarded to theblockchain platform 262. The platform includes a security/authorization268, computing devices which execute the transaction management 266 anda storage portion 264 as a memory that stores transactions and smartcontracts in the blockchain.

The blockchain platform may include various layers of blockchain data,services (e.g., cryptographic trust services, virtual executionenvironment, etc.), and underpinning physical computer infrastructurethat may be used to receive and store new entries and provide access toauditors which are seeking to access data entries. The blockchain mayexpose an interface that provides access to the virtual executionenvironment necessary to process the program code and engage thephysical infrastructure. Cryptographic trust services may be used toverify entries such as asset exchange entries and keep informationprivate.

The blockchain architecture configuration of FIGS. 2A and 2B may processand execute program/application code via one or more interfaces exposed,and services provided, by the blockchain platform. As a non-limitingexample, smart contracts may be created to execute reminders, updates,and/or other notifications subject to the changes, updates, etc. Thesmart contracts can themselves be used to identify rules associated withauthorization and access requirements and usage of the ledger. Forexample, the information may include a new entry, which may be processedby one or more processing entities (e.g., processors, virtual machines,etc.) included in the blockchain layer. The result may include adecision to reject or approve the new entry based on the criteriadefined in the smart contract and/or a consensus of the peers. Thephysical infrastructure may be utilized to retrieve any of the data orinformation described herein.

Within smart contract executable code, a smart contract may be createdvia a high-level application and programming language, and then writtento a block in the blockchain. The smart contract may include executablecode which is registered, stored, and/or replicated with a blockchain(e.g., distributed network of blockchain peers). An entry is anexecution of the smart contract code which can be performed in responseto conditions associated with the smart contract being satisfied. Theexecuting of the smart contract may trigger a trusted modification(s) toa state of a digital blockchain ledger. The modification(s) to theblockchain ledger caused by the smart contract execution may beautomatically replicated throughout the distributed network ofblockchain peers through one or more consensus protocols.

The smart contract may write data to the blockchain in the format ofkey-value pairs. Furthermore, the smart contract code can read thevalues stored in a blockchain and use them in application operations.The smart contract code can write the output of various logic operationsinto the blockchain. The code may be used to create a temporary datastructure in a virtual machine or other computing platform. Data writtento the blockchain can be public and/or can be encrypted and maintainedas private. The temporary data that is used/generated by the smartcontract is held in memory by the supplied execution environment, thendeleted once the data needed for the blockchain is identified.

A smart contract executable code may include the code interpretation ofa smart contract, with additional features. As described herein, thesmart contract executable code may be program code deployed on acomputing network, where it is executed and validated by chainvalidators together during a consensus process. The smart contractexecutable code receives a hash and retrieves from the blockchain a hashassociated with the data template created by use of a previously storedfeature extractor. If the hashes of the hash identifier and the hashcreated from the stored identifier template data match, then the smartcontract executable code sends an authorization key to the requestedservice. The smart contract executable code may write to the blockchaindata associated with the cryptographic details.

FIG. 2C illustrates a blockchain configuration for storing blockchaintransaction data, according to example embodiments. Referring to FIG.2C, the example configuration 270 provides for the vehicle 272, the userdevice 274 and a server 276 sharing information with a distributedledger (i.e., blockchain) 278. The server may represent a serviceprovider entity inquiring with a vehicle service provider to share userprofile rating information in the event that a known and establisheduser profile is attempting to rent a vehicle with an established ratedprofile. The server 276 may be receiving and processing data related toa vehicle's service requirements. As the service events occur, such asthe vehicle sensor data indicates a need for fuel/charge, a maintenanceservice, etc., a smart contract may be used to invoke rules, thresholds,sensor information gathering, etc., which may be used to invoke thevehicle service event. The blockchain transaction data 280 is saved foreach transaction, such as the access event, the subsequent updates to avehicle's service status, event updates, etc. The transactions mayinclude the parties, the requirements (e.g., 18 years of age, serviceeligible candidate, valid driver's license, etc.), compensation levels,the distance traveled during the event, the registered recipientspermitted to access the event and host a vehicle service,rights/permissions, sensor data retrieved during the vehicle eventoperation to log details of the next service event and identify avehicle's condition status, and thresholds used to make determinationsabout whether the service event was completed and whether the vehicle'scondition status has changed. Also, in other examples, the transactiondata may indicate gesture data, traffic condition data, traffic signaldata received or sent, etc.

FIG. 3A illustrates a vehicle traffic and gesture management systemconfiguration, according to example embodiments. Referring to FIG. 3A,the system 300 provides a vehicle 310, such as one of many vehiclesattempting to move along a roadway. The vehicle 310 may approach atraffic event area identified by the vehicle 310 and/or a managementserver 320 (which may receive road, traffic and weather information froma variety of sources including sensors and cameras on-board andoff-board the vehicles, including from other vehicles) and initiate atraffic event managed by one of assigned vehicle managers or a gestureevent where the vehicle 310 is attempting to communicate 312 withanother vehicle or a server for traffic management purposes. Theidentified traffic data 314 may be sent to the management server 320 fortraffic management purposes. The traffic rules 316 may be identifiedaccording to pre-stored and/or real-time rules for managing the trafficmanagement vehicle. Once the traffic manager/leader is designated 318based on timing (i.e., first to arrive at the designated traffic area),a reputation score or registered status of the vehicle, a smart contractwhich defines the rules for the traffic event may be provided 322 by ablockchain data source 330 which may be resident on the managementserver 320 or on a different source. The traffic status is monitored andidentified (on a continuous or semi-continuous basis) at the destinationarea 324 so the manager vehicle can conduct traffic commands to othervehicles via traffic control data 326, which is stored in the server 320for example. The status of the vehicle, such as a priority statusawarded to the manager and other commands performed by the vehicle 310,as well as identifying whether the manager's commands were followed andvarious traffic conditions, may be identified and stored 328 for auditpurposes. When the manager vehicle 310 has identified the traffic statusas resolved 332 (i.e., amount of traffic has fallen below trafficthreshold, a traffic management period of time has expired, etc.) thedesignation as the traffic manager or traffic leader is removed from thevehicle 310. In one embodiment, multiple vehicles may concurrently betraffic managers or leaders. All commands performed by the managementvehicle, other vehicles proximate the management vehicle, the statusesof the traffic, date, time, location and profile information ofoccupants and vehicles may be stored 334 in a blockchain transaction andstored in the blockchain 330.

FIG. 3B illustrates a flow diagram of a transport traffic managementconfiguration, according to example embodiments. Referring to FIG. 3B,the logic flow diagram 340 includes an example process of assigning aroadway manager. In this example, the various transports or vehicles ona roadway and/or inside a particular area are identified 342 and aremonitored 344 to determine a degree (or amount) of traffic and if thedegree of traffic has exceeded or not exceeded the degree of traffic346. If the traffic has not exceeded the degree of traffic (or trafficthreshold), the traffic is continued to be monitored 347. If the vehiclemovements on the roadway and/or inside the particular area are too slowand/or there are too many vehicles that exceed the degree of traffic (orthe traffic threshold) then the degree of transport traffic isidentified as being above that traffic threshold and a roadway manageris assigned to alleviate the traffic conditions 348. The movements ofthe roadway manager may be controlled 352 by a traffic applicationoperating inside the vehicle and/or via a remote server configured tocontrol the traffic management effort. For example, the roadway managermay then create indicators 354, such as lights, sounds, text, videoand/or displays (e.g., stop sign, go signs, etc.) via a display(s)embedded in and/or on the vehicle body.

FIG. 3C illustrates a flow diagram of a transport roadway safetyconfiguration, according to example embodiments. Referring to FIG. 3C,the logic flow 360 provides an example process of identifying a personin a roadway as an obstruction 362. The person may be identified via asensor(s) and/or a camera(s) on-board and/or off-board the vehicletraveling in the roadway. The threat level is determined at a first timeand/or distance 364 so a preemptive action can be taken to alleviate apotential threat. If a threat level is not above a threshold 366, theroadway continues to be monitored 367. In one embodiment, certainactions may be taken even when the threat level is not deemed to behigh, such as a honk of the horn, a flash of the lights, etc. to notifythe person of the vehicle's presence. When the threat level is above thethreshold (or at the threshold), a first indicator is performed 368 toalert at least one of the vehicle occupants, the person(s) in theroadway and/or approaching the roadway, other vehicles in a vicinity ofthe vehicle and/or the person(s), individuals and/or devices and serversmonitoring and/or controlling the vehicle, etc. about the particularthreat. The vehicle may detect a gesture performed by the person 370 andmay interpret the gesture for added feedback and/or actionable measures.For example, the gesture could be directing the vehicle to keep moving372 or may be indicating that the vehicle should stop or slow down. Thevehicle would detect and decipher the gesture via on-board and/oroff-board equipment including sensors, cameras, mobile devices,processors, memories, transceivers, and the like. At a later time, thethreat level is reevaluated (and may be continuously reevaluated) toidentify whether the threat threshold is still exceeded or has droppedto or below the threshold 374. When the threat level is below thethreshold, the vehicle may continue moving along the roadway 376 andcontinue monitoring for new threats.

FIG. 3D illustrates a flow diagram of a transport person identificationconfiguration, according to example embodiments. Referring to FIG. 3D,the example 380 provides identifying one or more persons near roadwaysand other areas for profile matching or for identification purposes. Inthis example, a person is identified as being in proximity to thetransport 382 via on-board and/or off-board equipment including sensors,cameras, mobile devices, processors, memories, transceivers, softwareand the like which may be communicably coupled to one another. Theprocess continues by determining whether the person matches profileattributes of one or more transport occupants 383 or attributes of theoccupant(s) and the person(s) match or overlap in an area of need (suchas to fulfil a good, service, request, question, etc. The attribute(s)and the matching of them can occur via the on-board and/or off-boardequipment When a match is confirmed, a message can be sent to thematched or identified person 384. If a match is not confirmed (or if theperson cannot be identified) then the monitoring of persons is continued385. If the person is matched via one or more attributes of both theperson's prolife and the profile of the occupant(s), then a notificationis created (on-board and/or off-board) and sent to the person'scommunication device (via contact information, such as a phone number,email address, social media account, etc., stored on-board and oroff-board) requesting a meeting 386. The person may accept or reject theinvitation 387 depending on their preferences and availability or mayask for additional information before accepting or rejecting. If theperson accepts, then a meeting location information may be sent to bothparties to create a time and place to meet 388 based on at least one ofa location of the transport, a location of the occupant, a location ofthe person, etc. A location may be selected in proximity to where thevehicle could park and/or stop to allow the occupant(s) to exit. and towhere the person could walk-up and then engage in the meeting location.

FIG. 3E illustrates a flow diagram of a gesture interpretation andtransport management configuration, according to example embodiments.Referring to FIG. 3E, the logic flow diagram 390 includes a process formanaging vehicle traffic and occupant gestures during roadway trafficengagements. The process may include identifying a plurality oftransports on the roadway 391, such as in a particular area and/or by aparticular density, such as near an intersection. Thetransports/vehicles may have one or more occupants in each of thevehicles gesturing via their heads, eyes, mouths, hands, arms, etc., tocue the other occupants in other vehicles to perform certain trafficactions, such as stop, go, slow, fast, wait, etc. The gestures may beidentified by sensors in the vehicles 392. When multiple gestures aredetected from occupants in multiple vehicles in a certain period oftime, a management authority, such as a remote server or other dataprocessing entity identifies which gestures were received first orsecond, etc., (Tg1, Tg2 . . . Tgn), and whether those vehicle/occupantprofiles have a higher priority than others due to a type of vehicle, areputation score from previous driving history, previous gesturecommunications, etc. A reputation score can be incremented (ordecremented) each time a vehicle has performed a vehicle driving eventsuccessfully (or unsuccessfully) by receiving commands from othervehicles, providing commands to others, having gestures interpretedproperly (or improperly), etc. When a higher priority transport/occupantprofile is identified among the transports 393, then that profile isselected as the source of the gesture to receive, process and interpretprior to any others. If no higher priority profile is available toelevate the gesture status, then the first gesture to be recognized as aproper gesture is used instead 394. The higher priority profile isselected to be used when available 395, and the gesture detected fromthat vehicle is used to control or influence operations of othervehicles 396 via the signaling and/or indicators provided by the vehicleand based on the gesture detected. The gesture is used to match anindicator(s) in a translation table and the vehicle-to-vehiclecommunication (either directly or via a server) may result based on theoccupant's gesture to cause transport movement signaling 397.

FIG. 4A illustrates a flow diagram of a transport traffic managementconfiguration, according to example embodiments. Referring to FIG. 4A,the example process 400 provides identifying a plurality of transportsoperating on a roadway 412, determining a degree of transport trafficbased on the plurality of identified transports 414, when the degree oftransport traffic has exceeded a traffic level, assigning one or more ofthe plurality of identified transports as a roadway manager 416,controlling movement of the roadway manager 418, such as through anautomated computer application and/or a remote device, to move themanager into an optimal traffic directing position, such as into amiddle of an intersection, and generating a roadway indicator on the oneor more roadway manager to direct the plurality of identified transports422.

The process also includes assigning the one or more of the plurality ofidentified transports as a roadway manager, pausing a movement of theroadway manager, in one example, and generating the roadway indicator onthe roadway manager based on a characteristic of the transport traffic.The roadway indicator includes one or more of a road sign display, alight display, a text indicator, a video indicator, a wireless datamessage command, and an audio indicator to direct the plurality ofidentified transports. The process also includes detecting the roadwayindicator via one or more of the plurality of identified transports,responsive to detecting the roadway indicator, retrieving transportoperation instructions from a memory, and moving the one or more of theplurality of identified transports based on the retrieved transportoperation instructions. After a period of time, the process may performdetermining the degree of transport traffic is no longer exceeding thetraffic level, and removing the roadway manager assignment from the oneor more of the plurality of identified transports. Responsive todetermining when the degree of transport traffic has exceeded thetraffic level, the process also includes identifying from a smartcontract, one or more of the identified plurality of transports to beassigned as a roadway manager, and creating a blockchain transactioncomprising one or more of the roadway manager, a date, a time, and alocation of the roadway traffic, and storing the blockchain transactionin a distributed ledger.

FIG. 4B illustrates a flow diagram of a transport roadway safetyconfiguration, according to example embodiments. Referring to FIG. 4B,the process 430 may include identifying a person as a roadwayobstruction via a transport moving along the roadway 432, determining afirst threat level of the person at a first time, via the transport 434,when the first threat level is above a threshold, indicating via thetransport, to alert at least one of an occupant of the transport and theperson 436, detecting a gesture, via the transport, performed by theperson, and the gesture indicates the transport should proceed 438,responsive to detecting the gesture, determining a second threat levelat a second time is below the threshold 442, and responsive to thesecond threat level being below the threshold, proceeding, by thetransport, along the roadway 444.

Additionally, the first threat level may be based on a speed of thetransport, a direction of the transport and a distance between thetransport and the person at the first time. The method may also includeidentifying the person is deviating away from the transport based on oneor more of a location of the person at the second time and a position ofthe person's body at the second time, and responsive to identifying theperson is deviating away from the transport, interpreting the gesture bythe transport to proceed along the roadway. The process also includesidentifying the person is deviating away from entering the roadway basedon one or more of a location of the person at the second time and aposition of the person's body at the second time, and responsive toidentifying the person is deviating away from entering from the roadway,interpreting the gesture by the transport to proceed along the roadway.The process may also include detecting a body movement performed by theperson, interpreting the body movement as one or more of instructing thetransport to stop and instructing the transport to continue moving onthe roadway, and identifying the body movement as the gesture. Theprocess may also include detecting the roadway obstruction in a travelpath of the transport via an image capture device of the transport,comparing the detected roadway obstruction to a set of known objectsstored in memory, matching the detected roadway obstruction to one ormore of the known objects, and responsive to matching the roadwayobstruction, designating the roadway obstruction as the person, and theindicating is one or more of a light display, a text indicator, a videoindicator, an audio indicator, a wireless data message command, atransport braking operation, and a transport steering operation. Theprocess may also include responsive to determining at least one of thefirst threat level and the second threat level, invoking a smartcontract, creating a blockchain transaction comprising informationrelated to the transport, transport occupants, and at least one of thefirst threat level and the second threat level, and storing at least oneof the smart contract and the blockchain transaction in a distributedledger.

FIG. 4C illustrates a flow diagram of a transport person identificationconfiguration, according to example embodiments. Referring to FIG. 4C,the process 450 includes identifying, via a transport, at least oneperson in proximity to the transport 452, determining the at least oneperson matches one or more profile attributes of a profile of at leastone transport occupant 454, sending a notification to a communicationdevice in the transport to prompt the at least one transport occupantabout the identified at least one person and the matched one or moreprofile attributes 456, and responsive to receiving a communicationrequest from the communication device, transmitting a communicationinvite to a mobile device of the at least one person 458.

The process may also include detecting at least one of a facialrecognition of the at least one person and the mobile device operated bythe at least one person, and identifying a profile of the at least oneperson. The process may also include comparing a profile attribute ofthe at least one person, stored in the profile of the at least oneperson, to the one or more profile attributes of the at least onetransport occupant, and determining the profile of the at least oneperson is a known contact of the at least one transport occupant, or theprofile of the at least one person matches at least one interest of theat least one transport occupant, and the at least one interest is storedin the one or more profile attributes of the at least one transportoccupant. The process also include responsive to determining the profileof the at least one person is a known contact of the at least onetransport occupant, or, the profile of the at least one person matchesat least one interest of the at least one transport occupant, creating asuggested meeting between the at least one transport occupant and the atleast one person, and sending a meeting request to the communicationdevice and the mobile device. In one example, the person is located atleast one of: adjacent to a roadway currently used by the transport, inanother transport traveling within the proximity of the transport, inanother transport traveling toward the transport, in another transporttraveling to a similar destination of the transport, and at a facilitywithin the proximity of the transport. The process may also includeinvoking a smart contract responsive to at least one of receiving thecommunication request from the at least one transport occupant andtransmitting the communication invite to the mobile device, and thesmart contract includes meeting information for the at least one personand the at least one transport occupant. The process also includesresponsive to receiving a communication invite confirmation from themobile device, creating a blockchain transaction comprising a name ofthe at least one person, a name of the at least one transport occupant,a date, a time, and the meeting information.

FIG. 4D illustrates a flow diagram of a gesture interpretation andtransport management configuration, according to example embodiments.Referring to FIG. 4D, the process 460 includes identifying a pluralityof transports operating on a roadway 462, identifying one or moregestures performed by one or more of a plurality of transport occupantslocated inside the transports 464, interpreting the one or more gesturesas transport operation controls 466, determining one of the transportshas a higher priority than at least one other of the plurality oftransports 468, and applying the one or more gestures associated withthe higher priority transport to control movement of the plurality oftransports on the roadway 472.

The process may also include determining one or more of the plurality oftransports are operating within a distance of an intersection, anddetermining a first of the one or more gestures indicates one of theoccupants, operating a first transport of the plurality of transports,has instructed another occupant, operating a second transport of theplurality of transports to move the second transport through theintersection, detecting the first gesture via the first transport,matching the first gesture to one or more indicators to be performed bythe first transport, performing the one or more indicators via the firsttransport, and detecting the one or more indicators via the secondtransport. The process may also include responsive to detecting the oneor more indicators via the second transport, moving the second transportthrough the intersection, detecting the one or more indicators via oneor more other transports different from the first and second transports,and responsive to the one or more indicators being detected by the oneor more other transports, pausing movement of the one or more othertransports for a period of time. In one example, the one or moreindicators include at least one of a light display, a text indicator, avideo indicator, an audio indicator, a wireless data message command, atransport braking operation, and a transport steering operation. Theprocess also includes invoking a smart contract responsive to applyingthe one or more gestures associated with the higher priority transportto control movement of one or more of the plurality of transports on theroadway, and creating a blockchain transaction with a date, a time,occupant profiles, and one or more indicators performed by one or moreof the plurality of transports.

FIG. 4E illustrates a flow diagram of a traffic condition sharingconfiguration, according to example embodiments. Referring to FIG. 4E,the process 480 includes identifying a plurality of transports operatingon a roadway 482, identifying one or more traffic conditions based onthe plurality of transports 484, such as traffic congestion, accidents,preferred routes, new routes, rush hour, etc. The process also includesdetermining one or more transport profiles of the plurality oftransports is part of a data sharing group 486 and sending the trafficconditions to one or more transports associated with the one or moretransport profiles 488. The shared information may be updates,alternative routes, different options for traffic routes, etc. Theprocess also includes applying the traffic conditions to current routeplans of the plurality of transport profiles 492. In this example, theprofiles of transports and/or occupants may be part of a data network ofshared information, such as a social network or data sharing groupdefined by its information topics and members. When any of the membersare in a position to identify traffic conditions and relatedinformation, the information is identified via sensor data and otherinformation capturing devices and shared with other members of the groupfor optimal vehicle travel through a particular area.

FIG. 5A illustrates an example blockchain vehicle configuration 500 formanaging blockchain transactions associated with a vehicle, according toexample embodiments. Referring to FIG. 5A, as a particulartransport/vehicle 525 is engaged in transactions, such as asset transfertransactions (e.g., access key exchanges, vehicle service, dealertransactions, delivery/pickup, transportation services, etc.). Thevehicle 525 may receive assets 510 and/or expel/transfer assets 512according to a transaction(s) defined by smart contracts. Thetransaction module 520 may record information, such as parties, credits,service descriptions, date, time, location, results, notifications,unexpected events, etc. Those transactions in the transaction module 520may be replicated into a blockchain 530, which may be managed by aremote server and/or by a remote blockchain peers, among which thevehicle 525 itself may represent a blockchain member and/or blockchainpeer. In other embodiments, the blockchain 530 resides on the vehicle525. The assets received and/or transferred can be based on location andconsensus as described herein.

FIG. 5B illustrates an example blockchain vehicle configuration 540 formanaging blockchain transactions between a service node (e.g., a gasstation, a service center, a body shop, a rental center, automotivedealer, local service stop, delivery pickup center, etc.) and a vehicle,according to example embodiments. In this example, the vehicle 525 mayhave driven itself to a service node 542, because the vehicle needsservice and/or needs to stop at a particular location. The service node542 may perform a service (e.g., pimp gas) or may register the vehicle525 for a service call at a particular time, with a particular strategy,such as oil change, battery charge or replacement, tire change orreplacement, and any other transport related service. The servicesrendered 544 may be performed based on a smart contract, which isdownloaded from or accessed via the blockchain 530 and identified forpermission to perform such services for a particular rate of exchange.The services may be logged in the transaction log of the transactionmodule 520, the credits 512 are transferred to the service center 542and the blockchain may log transactions to represent all the informationregarding the recent service. In other embodiments, the blockchain 530resides on the vehicle 525 and/or the service center server. In oneexample, a transport event may require a refuel or other vehicle serviceand the occupants may then be responsible for the asset value increasefor such service. The service may be rendered via a blockchainnotification, which is then used to redistribute the asset value to theoccupants via their respective asset values. Responsibility for theservice center activities can be based on asset transfer as describedherein.

FIG. 5C illustrates an example blockchain vehicle configuration 550 formanaging blockchain transactions conducted among various vehicles,according to the exemplary embodiments. The vehicle 525 may engage withanother vehicle 508 to perform various actions such as to share accesskeys, transfer keys, acquire service calls, etc. when the vehicle hasreached a status where the assets need to be shared with anothervehicle. For example, the vehicle 508 may be due for a battery chargeand/or may have an issue with a tire and may be in route to pick up apackage for delivery. The vehicle 508 may notify another vehicle 525which is in its network and which operates on its blockchain memberservice. The vehicle 525 may then receive the information via a wirelesscommunication request to perform the package pickup from the vehicle 508and/or from a server (not shown). The transactions are logged in thetransaction modules 552 and 520 of both vehicles. The assets aretransferred from vehicle 508 to vehicle 525 and the record of the assettransfer is logged in the blockchain 530/554 assuming that theblockchains are different from one another, or, are logged in the sameblockchain used by all members. Responsibility for the transferredassets can be based on asset values (e.g., access keys) as describedherein.

FIG. 6 illustrates blockchain blocks 600 that can be added to adistributed ledger, according to example embodiments, and contents ofblock structures 602A to 602 n. Referring to FIG. 6, clients (not shown)may submit entries to blockchain nodes to enact activity on theblockchain. As an example, clients may be applications that act onbehalf of a requester, such as a device, person or entity to proposeentries for the blockchain. The plurality of blockchain peers (e.g.,blockchain nodes) may maintain a state of the blockchain network and acopy of the distributed ledger. Different types of blockchainnodes/peers may be present in the blockchain network including endorsingpeers which simulate and endorse entries proposed by clients andcommitting peers which verify endorsements, validate entries, and commitentries to the distributed ledger. In this example, the blockchain nodesmay perform the role of endorser node, committer node, or both.

The instant system includes a blockchain which stores immutable,sequenced records in blocks, and a state database (current world state)maintaining a current state of the blockchain. One distributed ledgermay exist per channel and each peer maintains its own copy of thedistributed ledger for each channel of which they are a member. Theinstant blockchain is an entry log, structured as hash-linked blockswhere each block contains a sequence of N entries. Blocks may includevarious components such as those shown in FIG. 6. The linking of theblocks may be generated by adding a hash of a prior block's headerwithin a block header of a current block. In this way, all entries onthe blockchain are sequenced and cryptographically linked togetherpreventing tampering with blockchain data without breaking the hashlinks. Furthermore, because of the links, the latest block in theblockchain represents every entry that has come before it. The instantblockchain may be stored on a peer file system (local or attachedstorage), which supports an append-only blockchain workload.

The current state of the blockchain and the distributed ledger may bestored in the state database. Here, the current state data representsthe latest values for all keys ever included in the chain entry log ofthe blockchain. Smart contract executable code invocations executeentries against the current state in the state database. To make thesesmart contract executable code interactions extremely efficient, thelatest values of all keys are stored in the state database. The statedatabase may include an indexed view into the entry log of theblockchain, it can therefore be regenerated from the chain at any time.The state database may automatically get recovered (or generated ifneeded) upon peer startup, before entries are accepted.

Endorsing nodes receive entries from clients and endorse the entry basedon simulated results. Endorsing nodes hold smart contracts whichsimulate the entry proposals. When an endorsing node endorses an entry,the endorsing nodes creates an entry endorsement which is a signedresponse from the endorsing node to the client application indicatingthe endorsement of the simulated entry. The method of endorsing an entrydepends on an endorsement policy which may be specified within smartcontract executable code. An example of an endorsement policy is “themajority of endorsing peers must endorse the entry.” Different channelsmay have different endorsement policies. Endorsed entries are forward bythe client application to an ordering service.

The ordering service accepts endorsed entries, orders them into a block,and delivers the blocks to the committing peers. For example, theordering service may initiate a new block when a threshold of entrieshas been reached, a timer times out, or another condition. In thisexample, blockchain node is a committing peer that has received a datablock 602A for storage on the blockchain. The ordering service may bemade up of a cluster of orderers. The ordering service does not processentries, smart contracts, or maintain the shared ledger. Rather, theordering service may accept the endorsed entries and specifies the orderin which those entries are committed to the distributed ledger. Thearchitecture of the blockchain network may be designed such that thespecific implementation of ‘ordering’ (e.g., Solo, Kafka, BFT, etc.)becomes a pluggable component.

Entries are written to the distributed ledger in a consistent order. Theorder of entries is established to ensure that the updates to the statedatabase are valid when they are committed to the network. Unlike acryptocurrency blockchain system (e.g., Bitcoin, etc.) where orderingoccurs through the solving of a cryptographic puzzle, or mining, in thisexample the parties of the distributed ledger may choose the orderingmechanism that best suits that network.

Referring to FIG. 6, a block 602A (also referred to as a data block)that is stored on the blockchain and/or the distributed ledger mayinclude multiple data segments such as a block header 604A to 604 n,transaction specific data 606A to 606 n, and block metadata 608A to 608n. It should be appreciated that the various depicted blocks and theircontents, such as block 602A and its contents are merely for purposes ofan example and are not meant to limit the scope of the exampleembodiments. In some cases, both the block header 604A and the blockmetadata 608A may be smaller than the transaction specific data 606Awhich stores entry data; however, this is not a requirement. The block602A may store transactional information of N entries (e.g., 100, 500,1000, 2000, 3000, etc.) within the block data 610A to 610 n. The block602A may also include a link to a previous block (e.g., on theblockchain) within the block header 604A. In particular, the blockheader 604A may include a hash of a previous block's header. The blockheader 604A may also include a unique block number, a hash of the blockdata 610A of the current block 602A, and the like. The block number ofthe block 602A may be unique and assigned in an incremental/sequentialorder starting from zero. The first block in the blockchain may bereferred to as a genesis block which includes information about theblockchain, its members, the data stored therein, etc.

The block data 610A may store entry information of each entry that isrecorded within the block. For example, the entry data may include oneor more of a type of the entry, a version, a timestamp, a channel ID ofthe distributed ledger, an entry ID, an epoch, a payload visibility, asmart contract executable code path (deploy tx), a smart contractexecutable code name, a smart contract executable code version, input(smart contract executable code and functions), a client (creator)identify such as a public key and certificate, a signature of theclient, identities of endorsers, endorser signatures, a proposal hash,smart contract executable code events, response status, namespace, aread set (list of key and version read by the entry, etc.), a write set(list of key and value, etc.), a start key, an end key, a list of keys,a Merkel tree query summary, and the like. The entry data may be storedfor each of the N entries.

In some embodiments, the block data 610A may also store transactionspecific data 606A which adds additional information to the hash-linkedchain of blocks in the blockchain. Accordingly, the data 606A can bestored in an immutable log of blocks on the distributed ledger. Some ofthe benefits of storing such data 606A are reflected in the variousembodiments disclosed and depicted herein. The block metadata 608A maystore multiple fields of metadata (e.g., as a byte array, etc.).Metadata fields may include signature on block creation, a reference toa last configuration block, an entry filter identifying valid andinvalid entries within the block, last offset persisted of an orderingservice that ordered the block, and the like. The signature, the lastconfiguration block, and the orderer metadata may be added by theordering service. Meanwhile, a committer of the block (such as ablockchain node) may add validity/invalidity information based on anendorsement policy, verification of read/write sets, and the like. Theentry filter may include a byte array of a size equal to the number ofentries in the block data 610A and a validation code identifying whetheran entry was valid/invalid.

The other blocks 602B to 602 n in the blockchain also have headers,files, and values. However, unlike the first block 602A, each of theheaders 604A to 604 n in the other blocks includes the hash value of animmediately preceding block. The hash value of the immediately precedingblock may be just the hash of the header of the previous block or may bethe hash value of the entire previous block. By including the hash valueof a preceding block in each of the remaining blocks, a trace can beperformed from the Nth block back to the genesis block (and theassociated original file) on a block-by-block basis, as indicated byarrows 612, to establish an auditable and immutable chain-of-custody.

The above embodiments may be implemented in hardware, in a computerprogram executed by a processor, in firmware, or in a combination of theabove. A computer program may be embodied on a computer readable medium,such as a storage medium. For example, a computer program may reside inrandom access memory (“RAM”), flash memory, read-only memory (“ROM”),erasable programmable read-only memory (“EPROM”), electrically erasableprogrammable read-only memory (“EEPROM”), registers, hard disk, aremovable disk, a compact disk read-only memory (“CD-ROM”), or any otherform of storage medium known in the art.

An exemplary storage medium may be coupled to the processor such thatthe processor may read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor. The processor and the storage medium may reside in anapplication specific integrated circuit (“ASIC”). In the alternative,the processor and the storage medium may reside as discrete components.For example, FIG. 7 illustrates an example computer system architecture700, which may represent or be integrated in any of the above-describedcomponents, etc.

FIG. 7 is not intended to suggest any limitation as to the scope of useor functionality of embodiments of the application described herein.Regardless, the computing node 700 is capable of being implementedand/or performing any of the functionality set forth hereinabove.

In computing node 700 there is a computer system/server 702, which isoperational with numerous other general purpose or special purposecomputing system environments or configurations. Examples of well-knowncomputing systems, environments, and/or configurations that may besuitable for use with computer system/server 702 include, but are notlimited to, personal computer systems, server computer systems, thinclients, thick clients, hand-held or laptop devices, multiprocessorsystems, microprocessor-based systems, set top boxes, programmableconsumer electronics, network PCs, minicomputer systems, mainframecomputer systems, and distributed cloud computing environments thatinclude any of the above systems or devices, and the like.

Computer system/server 702 may be described in the general context ofcomputer system-executable instructions, such as program modules, beingexecuted by a computer system. Generally, program modules may includeroutines, programs, objects, components, logic, data structures, and soon that perform particular tasks or implement particular abstract datatypes. Computer system/server 702 may be practiced in distributed cloudcomputing environments where tasks are performed by remote processingdevices that are linked through a communications network. In adistributed cloud computing environment, program modules may be locatedin both local and remote computer system storage media including memorystorage devices.

As shown in FIG. 7, computer system/server 702 in cloud computing node700 is shown in the form of a general-purpose computing device. Thecomponents of computer system/server 702 may include, but are notlimited to, one or more processors or processing units 704, a systemmemory 706, and a bus that couples various system components includingsystem memory 706 to processor 704.

The bus represents one or more of any of several types of busstructures, including a memory bus or memory controller, a peripheralbus, an accelerated graphics port, and a processor or local bus usingany of a variety of bus architectures. By way of example, and notlimitation, such architectures include Industry Standard Architecture(ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA)bus, Video Electronics Standards Association (VESA) local bus, andPeripheral Component Interconnects (PCI) bus.

Computer system/server 702 typically includes a variety of computersystem readable media. Such media may be any available media that isaccessible by computer system/server 702, and it includes both volatileand non-volatile media, removable and non-removable media. System memory706, in one embodiment, implements the flow diagrams of the otherfigures. The system memory 706 can include computer system readablemedia in the form of volatile memory, such as random-access memory (RAM)708 and/or cache memory 710. Computer system/server 702 may furtherinclude other removable/non-removable, volatile/non-volatile computersystem storage media. By way of example only, memory 706 can be providedfor reading from and writing to a non-removable, non-volatile magneticmedia (not shown and typically called a “hard drive”). Although notshown, a magnetic disk drive for reading from and writing to aremovable, non-volatile magnetic disk (e.g., a “floppy disk”), and anoptical disk drive for reading from or writing to a removable,non-volatile optical disk such as a CD-ROM, DVD-ROM or other opticalmedia can be provided. In such instances, each can be connected to thebus by one or more data media interfaces. As will be further depictedand described below, memory 706 may include at least one program producthaving a set (e.g., at least one) of program modules that are configuredto carry out the functions of various embodiments of the application.

Program/utility, having a set (at least one) of program modules, may bestored in memory 706 by way of example, and not limitation, as well asan operating system, one or more application programs, other programmodules, and program data. Each of the operating system, one or moreapplication programs, other program modules, and program data or somecombination thereof, may include an implementation of a networkingenvironment. Program modules generally carry out the functions and/ormethodologies of various embodiments of the application as describedherein.

As will be appreciated by one skilled in the art, aspects of the presentapplication may be embodied as a system, method, or computer programproduct. Accordingly, aspects of the present application may take theform of an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present application may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Computer system/server 702 may also communicate with one or moreexternal devices via an I/O adapter 712, such as a keyboard, a pointingdevice, a display, etc.; one or more devices that enable a user tointeract with computer system/server 702; and/or any devices (e.g.,network card, modem, etc.) that enable computer system/server 702 tocommunicate with one or more other computing devices. Such communicationcan occur via I/O interfaces of the adapter 712. Still yet, computersystem/server 702 can communicate with one or more networks such as alocal area network (LAN), a general wide area network (WAN), and/or apublic network (e.g., the Internet) via a network adapter. As depicted,adapter 712 communicates with the other components of computersystem/server 702 via a bus. It should be understood that although notshown, other hardware and/or software components could be used inconjunction with computer system/server 702. Examples, include, but arenot limited to: microcode, device drivers, redundant processing units,external disk drive arrays, RAID systems, tape drives, and data archivalstorage systems, etc.

Although an exemplary embodiment of at least one of a system, method,and non-transitory computer readable medium has been illustrated in theaccompanied drawings and described in the foregoing detaileddescription, it will be understood that the application is not limitedto the embodiments disclosed, but is capable of numerous rearrangements,modifications, and substitutions as set forth and defined by thefollowing claims. For example, the capabilities of the system of thevarious figures can be performed by one or more of the modules orcomponents described herein or in a distributed architecture and mayinclude a transmitter, receiver or pair of both. For example, all orpart of the functionality performed by the individual modules, may beperformed by one or more of these modules. Further, the functionalitydescribed herein may be performed at various times and in relation tovarious events, internal or external to the modules or components. Also,the information sent between various modules can be sent between themodules via at least one of: a data network, the Internet, a voicenetwork, an Internet Protocol network, a wireless device, a wired deviceand/or via plurality of protocols. Also, the messages sent or receivedby any of the modules may be sent or received directly and/or via one ormore of the other modules.

One skilled in the art will appreciate that a “system” could be embodiedas a personal computer, a server, a console, a personal digitalassistant (PDA), a cell phone, a tablet computing device, a smartphoneor any other suitable computing device, or combination of devices.Presenting the above-described functions as being performed by a“system” is not intended to limit the scope of the present applicationin any way but is intended to provide one example of many embodiments.Indeed, methods, systems and apparatuses disclosed herein may beimplemented in localized and distributed forms consistent with computingtechnology.

It should be noted that some of the system features described in thisspecification have been presented as modules, in order to moreparticularly emphasize their implementation independence. For example, amodule may be implemented as a hardware circuit comprising custom verylarge-scale integration (VLSI) circuits or gate arrays, off-the-shelfsemiconductors such as logic chips, transistors, or other discretecomponents. A module may also be implemented in programmable hardwaredevices such as field programmable gate arrays, programmable arraylogic, programmable logic devices, graphics processing units, or thelike.

A module may also be at least partially implemented in software forexecution by various types of processors. An identified unit ofexecutable code may, for instance, comprise one or more physical orlogical blocks of computer instructions that may, for instance, beorganized as an object, procedure, or function. Nevertheless, theexecutables of an identified module need not be physically locatedtogether but may comprise disparate instructions stored in differentlocations which, when joined logically together, comprise the module andachieve the stated purpose for the module. Further, modules may bestored on a computer-readable medium, which may be, for instance, a harddisk drive, flash device, random access memory (RAM), tape, or any othersuch medium used to store data.

Indeed, a module of executable code could be a single instruction, ormany instructions, and may even be distributed over several differentcode segments, among different programs, and across several memorydevices. Similarly, operational data may be identified and illustratedherein within modules and may be embodied in any suitable form andorganized within any suitable type of data structure. The operationaldata may be collected as a single data set or may be distributed overdifferent locations including over different storage devices, and mayexist, at least partially, merely as electronic signals on a system ornetwork.

It will be readily understood that the components of the application, asgenerally described and illustrated in the figures herein, may bearranged and designed in a wide variety of different configurations.Thus, the detailed description of the embodiments is not intended tolimit the scope of the application as claimed but is merelyrepresentative of selected embodiments of the application.

One having ordinary skill in the art will readily understand that theabove may be practiced with steps in a different order, and/or withhardware elements in configurations that are different than those whichare disclosed. Therefore, although the application has been describedbased upon these preferred embodiments, it would be apparent to those ofskill in the art that certain modifications, variations, and alternativeconstructions would be apparent.

While preferred embodiments of the present application have beendescribed, it is to be understood that the embodiments described areillustrative only and the scope of the application is to be definedsolely by the appended claims when considered with a full range ofequivalents and modifications (e.g., protocols, hardware devices,software platforms etc.) thereto.

What is claimed is:
 1. A method, comprising: identifying a person as aroadway obstruction via a transport moving along the roadway;determining a first threat level of the person at a first time, via thetransport; when the first threat level is above a threshold, indicatingvia the transport, to alert at least one of an occupant of the transportand the person; detecting a gesture, via the transport, performed by theperson, wherein the gesture indicates the transport should proceed;responsive to detecting the gesture, determining a second threat levelat a second time is below the threshold; and responsive to the secondthreat level being below the threshold, proceeding, by the transport,along the roadway.
 2. The method of claim 1, wherein the first threatlevel is based on a speed of transport, a direction of the transport anda distance between the transport and the person at the first time. 3.The method of claim 1, comprising identifying the person is deviatingaway from the transport based on one or more of a location of the personat the second time and a position of the person's body at the secondtime; and responsive to identifying the person is deviating away fromthe transport, interpreting the gesture by the transport to proceedalong the roadway.
 4. The method of claim 1, comprising identifying theperson is deviating away from entering the roadway based on one or moreof a location of the person at the second time and a position of theperson's body at the second time; and responsive to identifying theperson is deviating away from entering from the roadway, interpretingthe gesture by the transport to proceed along the roadway.
 5. The methodof claim 1, comprising detecting a body movement performed by theperson; interpreting the body movement as one or more of instructing thetransport to stop and instructing the transport to continue moving onthe roadway; and identifying the body movement as the gesture.
 6. Themethod of claim 1, comprising: detecting the roadway obstruction in atravel path of the transport via an image capture device of thetransport; comparing the detected roadway obstruction to a set of knownobjects stored in memory; matching the detected roadway obstruction toone or more of the known objects; and responsive to matching the roadwayobstruction, designating the roadway obstruction as the person, whereinthe indicating is one or more of a light display, a text indicator, avideo indicator, an audio indicator, a wireless data message command, atransport braking operation, and a transport steering operation.
 7. Themethod of claim 1, comprising: responsive to determining at least one ofthe first threat level and the second threat level, invoking a smartcontract; creating a blockchain transaction comprising informationrelated to the transport, transport occupants, and at least one of thefirst threat level and the second threat level; and storing at least oneof the smart contract and the blockchain transaction in a distributedledger.
 8. A system, comprising: a transport configured to identify aperson as a roadway obstruction along a roadway; determine a firstthreat level of the person at a first time; when the first threat levelis above a threshold, perform an alert indication to at least one of anoccupant of the transport and the person; detect a gesture, performed bythe person, wherein the gesture indicates the transport should proceed;responsive to detection of the gesture, determine a second threat levelat a second time is below the threshold; and responsive to the secondthreat level being below the threshold, proceed along the roadway. 9.The system of claim 8, wherein the first threat level is based on aspeed of transport, a direction of the transport and a distance betweenthe transport and the person at the first time.
 10. The system of claim8, wherein the transport is further configured to identify the personhas deviated away from the transport based on one or more of a locationof the person at the second time and a position of the person's body atthe second time; and responsive to the person being identified asdeviated away from the transport, interpret the gesture by the transportto proceed along the roadway.
 11. The system of claim 8, wherein thetransport is further configured to identify the person has deviated awayfrom the roadway based on one or more of a location of the person at thesecond time and a position of the person's body at the second time; andresponsive to the person being identified as deviated away from theroadway, interpret the gesture by the transport to proceed along theroadway.
 12. The system of claim 8, wherein the transport is furtherconfigured to detect a body movement performed by the person; interpretthe body movement as one or more of an instruction to the transport tostop and an instruction to the transport to continue movement on theroadway; and identify the body movement as the gesture.
 13. The systemof claim 8, wherein the transport is further configured to detect theroadway obstruction in a travel path of the transport via an imagecapture device of the transport; compare the detected roadwayobstruction to a set of known objects stored in memory; match thedetected roadway obstruction to one or more of the known objects; andresponsive to the roadway obstruction being matched, designate theroadway obstruction as the person, wherein the indication is one or moreof a light display, a text indicator, a video indicator, an audioindicator, a wireless data message command, a transport brake operation,and a transport steer operation.
 14. The system of claim 8, wherein thetransport is further configured to responsive to a determination of atleast one of the first threat level and the second threat level, invokea smart contract; create a blockchain transaction comprising informationrelated to the transport, transport occupants, and at least one of thefirst threat level and the second threat level; and store at least oneof the smart contract and the blockchain transaction in a distributedledger.
 15. A non-transitory computer readable storage medium configuredto store instructions that when executed cause a processor to perform:identifying a person as a roadway obstruction via a transport movingalong the roadway; determining a first threat level of the person at afirst time, via the transport; when the first threat level is above athreshold, indicating via the transport, to alert at least one of anoccupant of the transport and the person; detecting a gesture, via thetransport, performed by the person, wherein the gesture indicates thetransport should proceed; responsive to detecting the gesture,determining a second threat level at a second time is below thethreshold; and responsive to the second threat level being below thethreshold, proceeding, by the transport, along the roadway.
 16. Thenon-transitory computer readable storage medium of claim 15, wherein thefirst threat level is based on a speed of transport, a direction of thetransport and a distance between the transport and the person at thefirst time.
 17. The non-transitory computer readable storage medium ofclaim 15, wherein the processor is further configured to perform:identifying the person is deviating away from the transport based on oneor more of a location of the person at the second time and a position ofthe person's body at the second time; and responsive to identifying theperson is deviating away from the transport, interpreting the gesture bythe transport to proceed along the roadway.
 18. The non-transitorycomputer readable storage medium of claim 15, wherein the processoridentifying the person is deviating away from entering the roadway basedon one or more of a location of the person at the second time and aposition of the person's body at the second time; and responsive toidentifying the person is deviating away from entering from the roadway,interpreting the gesture by the transport to proceed along the roadway.19. The non-transitory computer readable storage medium of claim 15,wherein the processor is further configured to perform: detecting a bodymovement performed by the person; interpreting the body movement as oneor more of instructing the transport to stop and instructing thetransport to continue moving on the roadway; and identifying the bodymovement as the gesture.
 20. The non-transitory computer readablestorage medium of claim 15, wherein the processor is further configuredto perform: detecting the roadway obstruction in a travel path of thetransport via an image capture device of the transport; comparing thedetected roadway obstruction to a set of known objects stored in memory;matching the detected roadway obstruction to one or more of the knownobjects; and responsive to matching the roadway obstruction, designatingthe roadway obstruction as the person, wherein the indicating is one ormore of a light display, a text indicator, a video indicator, an audioindicator, a wireless data message command, a transport brakingoperation, and a transport steering operation.